Skip to content

v0.9.0-beta.8: IBKR, snapshots, broker self-registration#87

Merged
luokerenx4 merged 4 commits intomasterfrom
dev
Mar 25, 2026
Merged

v0.9.0-beta.8: IBKR, snapshots, broker self-registration#87
luokerenx4 merged 4 commits intomasterfrom
dev

Conversation

@luokerenx4
Copy link
Copy Markdown
Contributor

Summary

  • Interactive Brokers integration — full IbkrBroker adapter (TWS/Gateway), callback→Promise bridge, conId-based contract resolution, graceful socket disconnect, completed orders sync
  • Account snapshot system — periodic + event-driven UTA state capture, equity curve UI with account switcher, configurable intervals, carry-forward for data gaps
  • Broker self-registration — each broker declares its own configSchema + configFields + fromConfig; frontend dynamically renders config forms from /broker-types
  • Account lifecycleAccountManager owns full UTA lifecycle, runtime enable/disable toggle, connection verification before persisting
  • Structured error types — permanent vs transient broker error classification for retry decisions
  • README overhaul — project structure aligned to domain/ + tool/ refactor, all v1 roadmap items marked complete
  • UI polish — TradingPage redesign, dark button styling, OpenAI backend card

55 commits since last merge.

Test plan

  • Verify IBKR broker connects and syncs portfolio via TWS/Gateway
  • Confirm snapshot scheduler fires and equity curve renders in Web UI
  • Test account creation wizard with dynamic broker config forms
  • Test account enable/disable toggle at runtime
  • Run pnpm test — all unit tests pass
  • Smoke test Web UI: chat, portfolio dashboard, config management

🤖 Generated with Claude Code

Ame and others added 4 commits March 25, 2026 02:50
createSnapshotService now accepts optional baseDir parameter. Service
tests pass tmpdir and clean up in afterEach, preventing acc1/acc2
residue in the project's data directory.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
New README covers TWS market data channels (updatePortfolio vs reqMktData
vs streaming), US equity trading sessions including overnight (Blue Ocean
ATS), socket error handling design, and known limitations around price
staleness after 20:00 ET.

IbkrBroker methods (getAccount, getPositions, getQuote) annotated with
data source, refresh behavior, and overnight coverage gaps.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- Project Structure: rewrite to match domain/ + tool/ refactor (remove
  stale extension/ and openbb/ paths)
- Features: add account snapshots, dynamic broker config UI, account
  enable/disable
- Architecture: rename Extensions → Domain, add Snapshots node
- Key Concepts: Extension → Domain + Tool layering
- Configuration: add snapshot.json
- Roadmap: mark all four v1 milestones complete

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
@luokerenx4 luokerenx4 merged commit 9edb274 into master Mar 25, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant